Перейти к основному содержимому
Версия: 1.7.5

Локальное тестирование

Запуск без Keeper

Можно запустить модуль локально для отладки:

# Создать config.yaml (все поля внутри additional!)
cat > config.yaml <<EOF
additional:
port: 8383
max_chunk_size: 500
api_url: "https://external-system.example.com/api/v1"
api_token: "test-token-for-local-development"
page_size: 100
timeout: 30
responsible_id: "00000000-0000-0000-0000-000000000000"
EOF

# Установить SDK
pip install modulesdk-0.0.2-py3-none-any.whl

# Установить зависимости
pip install -r requirements.txt

# Запустить
CONFIG_FILE=./config.yaml python3 main.py

Проверка эндпоинтов

После запуска модуль слушает на указанном порту:

# Проверить статус
curl http://localhost:8383/scan/status | jq .

# Ответ во время работы:
# {"status": "RUN", "packet_num": 0, "data": {...}}

# Ответ когда данные готовы:
# {"status": "ASSETS_READY", "packet_num": 1, "data": {"host": [...], ...}}

# Подтвердить получение пакета (эмуляция Keeper)
curl -X POST http://localhost:8383/scan/got-packet \
-H "Content-Type: application/json" \
-d '{"packet_num": 1}'

# Остановить модуль
curl -X POST http://localhost:8383/scan/shutdown

Запуск в Docker

docker run --rm \
-e CONFIG_FILE=/app/config.yaml \
-v $(pwd)/config.yaml:/app/config.yaml:ro \
-p 8383:8383 \
my-connector:latest

Переменные окружения

ПеременнаяОписаниеПо умолчаниюОбязательная
CONFIG_FILEПуть к config.yamlда
LOG_LEVELУровень логирования: DEBUG, INFO, WARNING, ERRORINFOнет